A digital imaging system is comprised of one or more digitization units, one or more image processing units, and one or more image display units. The system components may be co-located at a single site, or dispersed over separate geographic locations. In addition to the geographic diversity, system components may perform related image processing operations at various non-contiguous points in time. Thus the transmission of digital image information from one location to another, and from one point in time to another, is central to the operation of a digital imaging system.
In digital imaging systems, there are many ways to represent images in digital form. Not only are there many different formats of digital files, used to encapsulate the image information, but there is also a large variety of different color spaces and color encodings that can be used to specify the color of digital images within the digital files. The fundamental objective of these image representations is to communicate the necessary image information from the "earlier" image processing operations to the "later" image processing operations.
In some cases, the color encoding may be in terms of a so-called device independent color space, such as the well-known CIELAB color space. In recent years this color space has been used extensively to specify the color of digital images in color-managed digital imaging systems. In some cases, the image may actually be stored in the CIELAB color space. More commonly, the color space may be used to connect device profiles, which can be used to describe the color characteristics of various color imaging devices such as scanners, printers, and CRT video displays. The KODAK Photo YCC Color Interchange Space is another example of a device independent color space that can be used to encode digital images.
In other cases, the color encoding may be in terms of a device dependent color space. For example, an image processing operation performed in conjunction with an image digitization operation, may presuppose the intended image display and encode the image in a display-ready representation. Video RGB color spaces and CMYK color spaces are examples of this type of encoding. When a color image is encoded in a display device dependent color space, it will have the desired color appearance when it is displayed on the particular display device associated with that color space. The advantage of a device dependent color space is that the image is ready to be displayed or printed on the target device. However, the disadvantage is that the image will necessarily be limited to the color gamut of the particular target device. The color gamut of an imaging device refers to the range of colors and luminance values that can be produced by the device. Therefore, if the target device has a limited dynamic range, or is incapable of reproducing certain saturated colors, then it is not possible to encode color values outside of the range of colors that can be produced on the device. This limitation will constrain each of the later image processing and display operations.
One type of device dependent color space that has become quite widespread for use as a storage and manipulation color space for digital images is the video RGB color space. In reality, there are many different video RGB color spaces due to the fact that there are many different types of video RGB displays. As a result, a particular set of video RGB color values will correspond to one color on one video display and to another color on another video display. Therefore, video RGB has historically been a somewhat ambiguous color representation due to the fact that the color values could not be properly interpreted unless the characteristics of the target video display were known. Nonetheless, video RGB color spaces have become the defacto standard in many applications because the creation, display and editing of images on video displays are central steps in many digital imaging systems.
Recently, there have been efforts to standardize a particular video RGB color space in order to remove the ambiguity in the interpretation of the color values. (See the proposed IEC TC100 sRGB Draft Standard). One such proposed standard color space is known as "sRGB." This color space specifies a particular set of red, green, and blue primaries, a particular whitepoint, and a particular non-linear code value to light intensity relationship. Together, these tightly define the overall relationship between the digital code values and the corresponding device independent color values.
Although the use of a standard video RGB color space eliminates much of the ambiguity usually associated with video RGB color spaces, it does nothing to address the fact that encoding with this color space constrains the digital imaging system since video RGB has a limited color gamut relative to desirable later image processing operations and relative to other display devices. This constraint arises because any display device will have a limited color gamut relative to that of an original scene. For example, a scene may have a luminance dynamic range of 1000:1 or more, whereas a typical video display or reflection print will have a dynamic range on the order of 100:1. Certain image capture media, such as photographic negative film, can actually record dynamic ranges as large as 8000:1. Even though this is larger than the luminance dynamic range associated with most scenes, the extra dynamic range is often useful to provide additional information to certain image processing operations as an allowance for exposure errors, light source variations, etc.
In order to encode images from various sources in a video RGB representation, it is necessary to discard information that is outside the color gamut of the video RGB color space. In some cases, such as when it is desired to encode the appearance of colors in an original scene or the colors captured by a photographic negative, a great deal of information will typically need to be discarded due to the large disparity in the dynamic ranges. For the case where it is desired to scan a reflection print and store it in a video RGB color space, it is still necessary to discard a substantial amount of information due to the mismatch in the color gamuts, even though the luminance dynamic ranges may be quite similar.
For example, FIG. 1 shows a comparison of a typical Video RGB Color Gamut 10 and a typical Reflection Print Color Gamut 12. In this case, a*-b* cross-sections of the color gamuts are shown in the CIELAB space at an L* value of 65. The colors that are inside the boundary are within the gamuts of the respective devices, while those that are outside the boundary cannot be reproduced, and are therefore referred to as "out-of-gamut" colors. It can be seen that there is a large set of color values with a b* value larger than 60 that can be produced on the printer, but are outside the color gamut of the video display. As a result, if the reflection print were scanned and stored in a video RGB color space, it would not be possible to encode this color information.
The mismatch between the video RGB color gamut and the color gamuts of other display devices and image sources represents a serious limitation on the usefulness of the video RGB color space in communicating digital image information throughout a digital imaging system. However, in many cases, the convenience of storing and transmitting the image in a color space that is ready for direct display on a computer video CRT has been the over-riding factor in the determination of the preferred color space. This has come at the expense of image processing and display operations that can utilize the extended color gamut information that may have existed in an input image.